home *** CD-ROM | disk | FTP | other *** search
/ Celestin Apprentice 5 / Apprentice-Release5.iso / Utilities / Programming / Instant Subclass 1.0.1 / About Instant Subclass next >
Encoding:
Text File  |  1996-05-05  |  4.0 KB  |  115 lines  |  [TEXT/R*ch]

  1. Instant Subclass 1.0
  2. Eliminate the C++ drudgery!
  3. ©1995-1996 Chris K. Thomas.  All Rights Reserved.
  4.  
  5. Instant Subclass is a developer tool which generates subclass template code
  6. from your base classes-
  7.  
  8. See the Magic!  Drop your .h file on Instant Subclass.  Turn on the methods
  9. you wish to inherit.  Click Generate, and your new .cp and .h files with
  10. boilerplate code are instantly generated!  Every C++ programmer should have
  11. it so easy!
  12.  
  13. Don’t forget to Register.  Only $10.  I think it was Heinlein who said that
  14. the only meaningful applause arrives in great big piles of folding green
  15. paper.  If you truly can't afford it, I also accept applause (and abuse) via
  16. ckt@kagi.com.
  17.  
  18. ——— Version History —————————————————————————————————————————————————————————
  19.  
  20. • 1.0.1  April-May 1996  First Well-Rounded Release
  21.  
  22. Features Added:
  23. * The file header (version history, copyright, etc) is now parameterized.
  24.   Customize!
  25. * I switched from “turning *off* methods you don’t want” to “turning *on*
  26.   methods you do want.”  This seems to make more sense.  Give me a yell
  27.   if you care.
  28.  
  29. Bugs fixed:
  30. * "virtual" included in the method implementation declaration in the .cp file.
  31. * used the base class' name for the destructor
  32. * lots of minor application bugs not relevant to source generation.
  33. * No 68k build (forgetfulness)
  34.  
  35. Bugs partially fixed:
  36. * difficult to select methods in the methods list.  The full fix awaits a 
  37.   new version of PowerPlant.  Should at least behave normally if you don’t
  38.   drag while selecting.
  39.  
  40.  
  41. • 1.0 First Buggy Release
  42.  
  43. ——— Customization ———————————————————————————————————————————————————————————
  44.  
  45. In the file "Source Generation Templates," there is a TEXT resource, id 128.
  46. This resource contains the text of the file header.  Instant Subclass does an
  47. intermediate variable substition scan and then places it at the beginning of
  48. both generated files.
  49.  
  50. The variable substition scan replaces any variables found with text
  51. generated internally corresponding to that variable.
  52.  
  53. Currently, only one variable is supported:
  54.  
  55. Variable        Replaced with
  56. <FileName>        Filename of the current file.
  57.  
  58. I plan to add:
  59. <LongDate>        Tuesday, 34 March 1907
  60. <ShortDate>        5/34/07
  61. <Year>            1907
  62.  
  63. The same mechanism will be used for parameterization of other text, most
  64. importantly class and method declarations, and new variables will be added
  65. as needed.
  66.  
  67. There's an example of a PowerPlant-style template file in the “Variations
  68. on a Theme” folder.
  69.  
  70. ——— Limitations —————————————————————————————————————————————————————————————
  71.  
  72. InstantSubclass can't handle preprocessor weirdness, such as:
  73.  
  74. class Gibberish
  75. {
  76.     virtual void SAVE_DECLARED_METHOD(MyDeclaredMethod, (char *methodArg));
  77. };
  78.  
  79. This, BTW, is one of the reasons that opponents of the C preprocessor
  80. wish to see the preprocessor eliminated from the language specification.
  81.  
  82.  
  83. ——— Future Plans ————————————————————————————————————————————————————————————
  84.  
  85. Suggestions, ideas and bug reports are all entirely welcome at ckt@best.com.
  86.  
  87. Next few versions...
  88. 1. all of the generated code will be parameterized through a template file.
  89. 2. support for multiple template files- add a pop-up menu allowing instant
  90.    selection of a particular template file.
  91. 3. do something about friends and copy constructors (but what?)
  92. 4. implement the base class access controls.
  93. 5. inherit from structs.  This is trivial, but to be effective requires 6:
  94. 6. include an option to not add classes without methods to the class list.
  95. 7. support for other languages is possible.  This will probably be
  96.    accomplished through template files.
  97. 8. fix bugs, fix bugs, fix bugs...
  98.  
  99. further off...
  100. • add support for the derivation of SOM-based classes
  101. • add full AppleScript support - tedious but very cool
  102.  
  103.  
  104. ——— Legalities ——————————————————————————————————————————————————————————————
  105.  
  106. * This software is provided AS IS.
  107.  
  108. * Instant Subclass may be included on any and all CD-ROMs on the
  109. condition that I receive one copy of any and all such CD-ROMS including
  110. Instant Subclass.
  111.  
  112. * Instant Subclass may not be distributed via the Microsoft Network.
  113.  
  114. * Instant Subclass may not be distributed via Prodigy.
  115.